home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / circuits / irsim-ca.2 / irsim-ca / irsim-cap-9.2 / man / irsim9.3.powerEst.doc < prev    next >
Text File  |  1995-11-03  |  5KB  |  150 lines

  1. Notes on Power Estimation using IRSIM
  2. ======================================
  3.  
  4. New commands        Descriptions
  5. ------------------------------------------------------------------------------
  6.     powlogfile        start/stop power logfile 
  7.     powtrace        start/stop power tracing of specified node(s)/vector(s)
  8.     powstep        toggle the display of power estimate for each timestep
  9.     sumcap        print out the sum of the capacitance of all nodes
  10.     vsupply        set supply voltage for calculating power (default 5V)
  11. ------------------------------------------------------------------------------
  12.  
  13. Example usage of new commands:
  14.  
  15. irsim> powlogfile foo.trace
  16.  
  17. Opens foo.trace to which nodal transition reports will
  18. contain nodal capacitance data (n->ncap from the node structure).
  19. The format of each line is similar to the line you get when you trace a
  20. node normally:
  21. -------------------------
  22. 8300.0 *INPUT* ir/ICacheDataBus_w2.5 -> 0       0.0 0.0 0.390
  23.  
  24. for an input being changed
  25. -------------------------
  26. /m/s[25]/bitbar        0 -> 1  0.8 0.8 0.494
  27.  
  28. for a normal node change
  29. -------------------------
  30.  
  31. The last field is the node capacitance being switched (in pF)
  32.  
  33. Note that this file can be useful if you want to catch transitions
  34. yourself and process them.  Ordinarily, I do the following:
  35.  
  36. irsim> powlogfile /dev/null
  37.  
  38. which throws away the transitional data.  However, upon closing the "file",
  39. a summary will come to stdout as shown below.
  40.  
  41. irsim> powlogfile
  42.  
  43. With no arguments, powlogfile just closes the opened logfile.
  44.  
  45. irsim> powtrace <node names>
  46.  
  47. 'powtrace' is used to indicate to irsim which nodes to log power statistics
  48. on.  For instance:
  49.  
  50. irsim> powtrace *
  51.  
  52. will log all transitions to the powlog file, and the summary that is 
  53. displayed upon closing the file will contain data for all nodes.
  54.  
  55. Following the above command with a line like the following:
  56.  
  57. irsim> powtrace -foo/dont/count/me*
  58.  
  59. would mean that all nodes with the prefix 'foo/dont/count/me' would
  60. not be included in the powlog file or in the summary.  Note that
  61. this is the same syntax for the 't' (trace) command that already exists
  62. in irsim.  
  63.  
  64. Instead of tracing all nodes by using *, one can look at only the nodes
  65. that are interesting by using lines of the form:
  66.  
  67. irsim> powtrace BlockA/interesting/nodes*
  68. irsim> powtrace BlockB/moreInteresting/nodes*
  69.  
  70. again, the same syntax for the 't' command.
  71.  
  72. 'powtrace' also sets the context for the 'powstep' command:
  73.  
  74. irsim> powstep
  75.  
  76. toggles whether dynamic power estimation is displayed after each
  77. timestep.
  78.  
  79. Again, the dynamic power displayed will only be for the nodes that
  80. have been selected using the 'powtrace' command.
  81.  
  82. irsim> vsupply 5.0
  83. Supply Voltage = 5.00 Volts
  84.  
  85. Sets V=5.0 for use in the P=CV^2/(2t) where C is capacitance switched,
  86. and t is the timestep.  The default value for vsupply is 5.0 Volts.
  87.  
  88. irsim> sumcap
  89. Sum of nodal capacitances: 3699.549805 pF
  90.  
  91. Gives a sum of ALL nodal capcitances, NOT just those selected with
  92. the 'powtrace' command.
  93.  
  94. ===========================================================================
  95. Description of the power summary that is printed when the powlogfile is
  96. closed:
  97.  
  98. For each node selected using 'powtrace' a line will be printed to stdout
  99. in the following format:
  100.  
  101. e/E/c/Phi/5_498_60       2.486        225            0.154719       0.005565
  102.  
  103. name                    cap (pF)  # of transitions   mWatts         % of total
  104.                 (see note below)             dissipated in  power due
  105.                                      this node      to this
  106.                                       node
  107. Note:  Nodal transitions caused by 'h <node>' or 'l <node>' are
  108.        not included in the transition count.
  109.  
  110. After all the node lines go by, a final line will be printed giving the
  111. total power dissipation of the traced nodes in Watts.
  112.  
  113. ============================================================================
  114. Example Script:
  115.  
  116. | This is a script that shows what I usually do:
  117. | Normal initialization
  118. @init.cmd
  119. | Throw away transitional data
  120. powlogfile /dev/null
  121. | Display power at each step
  122. powstep
  123. | Invoke simulation script that prods all the right nodes at the right time
  124. @simulate.cmd
  125. | Open a normal logfile to catch the summary table
  126. logfile /tmp/power.report
  127. | Close the powlogfile to generate the report
  128. powlogfile
  129. | Close the logfile
  130. logfile
  131. =============================================================================
  132.  
  133. Now, with grep, awk, sort, and other great programs you might write, you can
  134. pull whatever data you want out of the resulting files.
  135.  
  136. Typing 
  137.  
  138. irsim> help [command]
  139.  
  140. should give you a help message for the new commands just like it does for
  141. the old ones
  142.  
  143. That's all, folks....
  144.  
  145. If you find bugs or have questions or suggestions, please let me know by
  146. sending mail to dcr@fugue.
  147.  
  148.  
  149.